<?php
namespace app\pos_v1\middleware;
// 登录检查中间件
class Login
{
    public function handle($request, \Closure $next)
    {
        // 非login控制器页面处理：
        if (!preg_match("/login/", $request->pathinfo())) {
            // echo "我不是login登录组件页-控制器<br/>";
            if (empty(cache('userdb_' . request()->header('token'))) && $request->host() == "net.6-7-8-9.com" && app('http')->getName() != "pos_v1") {
                $apidb = [
                    'code' => 201, //状态码
                    'msg' => "当前页面要求登录,请登录!" ,
                    // 'time' => time(),
                    // '_COOKIE' => $_COOKIE,
                    // '_POST' => $_POST,    //请求数据包--正式版要删除
                    // '_GET' => $_GET,    //请求数据包--正式版要删除
                    // 'session_id' => Session::getId(), //令牌
                    // "session_cache_expire" => session_cache_expire(), //当前缓存期限
                    // "_input" => input(), //接收请求参数方式-input
                    "_param" => $request->param(),
                    // '_session' => session(),
                    '_header' => $request->header(),
                    'host' => $request->host(),
                    'pathinfo' => $request->pathinfo(), //https://doc.thinkphp.cn/v8_0/request_info.html
                    '_cache' => cache('userdb_' . request()->header('token')),
                ];
                return json($apidb);
            }
        }
        // 前置中间件
        $response = $next($request);
        // 后置中间件
        return $response;
    }
    // 中间件结束调度
    public function end(\think\Response $response)
    {
    }
    // 点击量
    public function read()
    {
        // $id = input('param.id');
        // $userId = 33;
        // Cache::inc("clickNum" . $id);
        // $clickNum = Cache::get("clickNum" . $id);
        // $NewsModel = new NewsModel();
        // $info = $NewsModel->getNewsById($id);
        // $info["data"]["clickNum"] = $clickNum;
        // return json($info);
    }
}
